/**
 * 
 */
package br.idez.idezJet.integracao.dao;

import java.util.Collection;

import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;

import br.idez.idezJet.integracao.vo.Pedido;

/**
 * @author Moacir Junior
 *
 */
@Stateless
public class PedidoDAOImpl implements PedidoDAO {
	
	@PersistenceContext
	private EntityManager em;

	/* (non-Javadoc)
	 * @see br.idez.idezJet.integracao.dao.IdezJetDAO#incluir(java.lang.Object)
	 */
	@Override
	public void incluir(Pedido o) throws Exception {
		em.persist(o);
	}

	/* (non-Javadoc)
	 * @see br.idez.idezJet.integracao.dao.IdezJetDAO#alterar(java.lang.Object)
	 */
	@Override
	public void alterar(Pedido o) throws Exception {
		em.merge(o);
	}

	/* (non-Javadoc)
	 * @see br.idez.idezJet.integracao.dao.IdezJetDAO#consultar(java.lang.Object)
	 */
	@Override
	public Pedido consultar(Pedido o) throws Exception {
		return em.find(Pedido.class, o.getId());
	}

	/* (non-Javadoc)
	 * @see br.idez.idezJet.integracao.dao.IdezJetDAO#listar()
	 */
	@Override
	public Collection<Pedido> listar() throws Exception {
		Query q = em.createQuery("select p from Pedido p");
		return q.getResultList();
	}

	/* (non-Javadoc)
	 * @see br.idez.idezJet.integracao.dao.IdezJetDAO#listar(java.lang.Object)
	 */
	@Override
	public Collection<Pedido> listar(Pedido o) throws Exception {
		return null;
	}

	/* (non-Javadoc)
	 * @see br.idez.idezJet.integracao.dao.IdezJetDAO#excluir(java.lang.Object)
	 */
	@Override
	public void excluir(Pedido o) throws Exception {
		em.merge(o);
		em.remove(o);
	}

}
